Ever increasing energy demand and corresponding consumption has made energy management and conservation an important issue, in particular for electric and gas utilities and electricity and gas distribution networks. An important aspect of energy management involves measurement of usage by the consumers of the energy resource. In the electric and gas utility sector, there is therefore an emerging need to have an infrastructure that supports measuring and managing energy usage.
Electricity meters have long been used in the electric utility sector for measuring electricity consumption. The data formats, data structures and communications protocols for electricity meters have evolved from being proprietary to incorporating an ANSI standard, e.g. the C12.18 and C12.19 standards. This enabled utility companies to have a compatible communication protocol between ANSI meters so that they were not restricted to a single vendor. With a standard communication protocol, sending and receiving data from an electricity meter became easier. The ability to send and receive data remotely, e.g. via telephone modems was soon expected.
To address the need to communicate remotely, the C12.18 standard was adapted to create C12.21, which specified a new version of C12.18 that was modified for telephone modems. The protocol defined by C12.21 was strictly a point-to-point communication and session oriented. The intent of C12.21 was to use it with existing modems while relying on the physical attributes defined in C12.18 for implementing a compatible communication interface. With the advent of the Internet, C12.22 was then developed to be used over already existing communication networks such as TCP/IP over Ethernet, SMS over GSM, or UDP/IP over PPP over serial port. C12.22 therefore provides a common application layer that all meters can use in a manner similar to the way in which HTTP provides a common application layer for web browsers.
C12.22 provides for both session and sessionless communications. Sessionless communications have the advantage of requiring less complex handling on both sides of the communication link and fewer packets exchanged if communication sessions tend to be short. C12.22 also describes a number of application layer services that are used to handle functions of the protocol, such as identification request, read request, write request, logon request, security request, logoff request, wait request, registration request, de-registration request, resolve request, and trace request. C12.22 was used instead of other methods, e.g. wrapping C12.18 or C12.21 protocol transactions in an existing network transport protocol, to improve security, reliability, and speed.